package com.sob.bountyhunter.inventario;

import java.util.ArrayList;

import com.sob.bountyhunter.atributos.HojaPersonaje;

public class Inventario {
	public static final int MAX_SLOTS = 2;
	
	private ArrayList<Objeto> objetos;
	private float maxPeso;
	//private HojaPersonaje propietario;
	private Objeto[] equipacion;
	
	public Inventario(){ //HojaPersonaje j){
		objetos=new ArrayList<Objeto>();
		//propietario=j;
		equipacion=new Objeto[MAX_SLOTS];
	}
	
	public ArrayList<Objeto> getListaObjetos(){
		return objetos;
	}
	
	public void addObjeto(Objeto o){
		objetos.add(o);
	}
	
	public void delObjeto(Objeto o){
		objetos.remove(o);
	}
	
	public Objeto getEquipado(int slot){
		return equipacion[slot];
	}
	
	public void equipaObjeto(Objeto o){
		if(!isEquipado(o)){
			if(objetos.contains(o)){
				for(int i : o.slots){
					//TODO: Comprobar si hay algo ya equipado y sustituirlo
					//....				
					
					//Equipa
					equipacion[i]=o;
				}
			}
		}
	}
	
	public void desequipaObjeto(Objeto o){
		//TODO: Comprueba que estubiese equipado antes
		//...
		for(int i : o.slots){
			//Desequipa
			equipacion[i]=null;
		}		
	}
	
	public boolean isEquipado(Objeto obj){
		boolean res=false;
		
		for(Objeto o: equipacion){
			if(o!=null){
				if(o.equals(obj)){
					res=true;
					break;
				}
			}
		}
		
		return res;
	}
}
